package TXPathFinder;

import java.util.ArrayList;

/**
*       \class	CognitionMap
*	\brief	Classe qui stock toute les informations concernant la map cognitive d'un avatar (chemin parcourut, déstination, ...)
**/
public class CognitionMap {
    
    private ArrayList<Coordonnee> coordPath;
    private ArrayList<Coordonnee> coordSight;
    private ArrayList<Coordonnee> coordGhost;
    private Coordonnee coordTarget;


    /**
    *	\brief	Constructeur - initialise les listes de coordonnées
    **/
    public CognitionMap() {
        coordSight = new ArrayList<Coordonnee>();
        coordPath = new ArrayList<Coordonnee>();
        coordGhost = new ArrayList<Coordonnee>();
        coordTarget = null;
    }

    /**
    *	\brief	Accesseur
    *   \return Les coordonnées du chemin parcourut par l'avatar
    **/
    public ArrayList<Coordonnee> getCoordPath() {
        return coordPath;
    }

    /**
    *	\brief	Accesseur
    *   \return Les coordonnées de la vision de l'avatar
    **/
    public ArrayList<Coordonnee> getCoordSight() {
        return coordSight;
    }

    /**
    *	\brief	Accesseur
    *   \return Les coordonnées des ghosts de l'avatar
    **/
    public ArrayList<Coordonnee> getCoordGhost() {
        return coordGhost;
    }

    /**
    *	\brief	Accesseur
    *   \return La destination de l'avatar
    **/
    public Coordonnee getCoordTarget() {
        return coordTarget;
    }

    /**
    *	\brief	Accesseur
    *   \param coordPath La liste des coordonnées du chemin parcourut par l'avatar
    **/
    public void setCoordPath(ArrayList<Coordonnee> coordPath) {
        this.coordPath = coordPath;
    }

    /**
    *	\brief	Accesseur
    *   \param coordSight La liste des coordonnées de la vision de l'avatar
    **/
    public void setCoordSight(ArrayList<Coordonnee> coordSight) {
        this.coordSight = coordSight;
    }

    /**
    *	\brief	Accesseur
    *   \param coordGhost La liste des coordonnées des ghosts de l'avatar
    **/
    public void setCoordGhost(ArrayList<Coordonnee> coordGhost) {
        this.coordGhost = coordGhost;
    }

    /**
    *	\brief	Accesseur
    *   \param coordTarget La coordonnée de la destination de l'avatar
    **/
    public void setCoordTarget(Coordonnee coordTarget) {
        this.coordTarget = coordTarget;
    }
}
